import upperFirst from 'lodash/upperFirst'
  import camelCase from 'lodash/camelCase'
  export default ({
    Vue, // the version of Vue being used in the VuePress app
    options, // the options for the root Vue instance
    router, // the router instance for the app
    siteData // site metadata
  }) => {
    // ...apply enhancements to the app
   
    const requireComponent = require.context(
      // The relative path of the components folder
      '../',
      // Whether or not to look in subfolders
      true,
      // The regular expression used to match base component filenames
      /.(vue|js)$/
    )
    
    
    requireComponent.keys().forEach(fileName => {
      // Get component config
      const componentConfig = requireComponent(fileName)
      const fc = fileName.split('/')
      const f = fc[fc.length - 1]
      // Get PascalCase name of component
      const componentName = upperFirst(
        camelCase(
          f.replace(/.*\//, '$1').replace(/\.\w+$/,'')
        )
      )
      // Register component globally
      Vue.component(
        componentName,
        componentConfig.default || componentConfig
      )
    })
  }